package com.caocaog.market.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.caocaog.market.modules.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.io.Serializable;

/**
 * 店铺信息表
 *
 * @author jeecg-boot
 * @date 2021-11-19
 */
@Data
@TableName("mk_shop_basic")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="mk_shop_basic对象", description="店铺信息表")
public class ShopBasic extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;
	/**商家ID*/
	@Dict(dictTable = "mk_merchant_basic", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "商家ID")
    private String merchantId;
	/**名称*/
    @ApiModelProperty(value = "名称")
    private String name;
	/**店铺logo*/
    @ApiModelProperty(value = "店铺logo")
    private String logo;
	/**店铺状态*/
	@Dict(dicCode = "shop_status")
    @ApiModelProperty(value = "店铺状态0正常1冻结")
	private Integer status;
	/**店铺审核状态*/
	@Dict(dicCode = "audit")
	@ApiModelProperty(value = "店铺审核状态")
	private Integer audit;
	/**开始营业*/
	@JsonFormat(timezone = "GMT+8", pattern = "HH:mm")
    @ApiModelProperty(value = "开始营业")
    private String businessStd;
	/**结束营业*/
	@JsonFormat(timezone = "GMT+8", pattern = "HH:mm")
    @ApiModelProperty(value = "结束营业")
    private String businessEnd;
	/**是否休息0:营业 1:休息*/
	@Dict(dicCode = "shop_rest")
    @ApiModelProperty(value = "是否休息0:营业 1:休息")
    private Integer isRest;
	/**营业执照*/
    @ApiModelProperty(value = "营业执照")
    private String license;
	/**佣金比例*/
    @ApiModelProperty(value = "佣金比例")
    private String commissionRate;
	/**店铺等级*/
	@Dict(dicCode = "shop_level")
    @ApiModelProperty(value = "店铺等级")
    private String level;
	/**店铺评级*/
    @ApiModelProperty(value = "店铺评分0-5制")
    private String grade;
	/**热门店铺1:热门0非热门*/
	@Dict(dicCode = "shop_hot")
    @ApiModelProperty(value = "热门店铺1:热门0非热门")
    private Integer isHot;
	/**推荐店铺1:推荐 0:非推荐*/
	@Dict(dicCode = "shop_recommend")
    @ApiModelProperty(value = "推荐店铺1:推荐 0:非推荐")
    private Integer recommend;
	/**店铺经度*/
    @ApiModelProperty(value = "店铺经度")
    private String lng;
	/**店铺纬度*/
    @ApiModelProperty(value = "店铺纬度")
    private String lat;
	/**省份*/
    @ApiModelProperty(value = "省份")
	@Dict(dictTable = "mk_area_province",dicCode = "sid" , dicText = "name")
    private Integer province;
	/**城市*/
    @ApiModelProperty(value = "城市")
	@Dict(dictTable = "mk_area_city",dicCode = "sid" , dicText = "name")
    private Integer city;
	/**区/县*/
	@Dict(dictTable = "mk_area_district",dicCode = "sid" , dicText = "name")
    @ApiModelProperty(value = "区/县")
    private Integer area;
	/**所在地*/
    @ApiModelProperty(value = "所在地")
    private String location;
	/**地址*/
    @ApiModelProperty(value = "地址")
    private String address;
	/**地址文本*/
	@Excel(name = "地址文本", width = 15)
    @ApiModelProperty(value = "地址文本")
    private String addressText;
	/**主频道ID*/
	@Dict(dictTable = "mk_shop_channel", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "主频道ID")
    private String channelId;
	/**店铺类型*/
	@Dict(dicCode = "shop_type")
	@ApiModelProperty(value = "店铺类型")
	private Integer type;
	/**支付宝姓名*/
	@ApiModelProperty(value = "支付宝姓名")
	private java.lang.String zfbName;
	/**支付宝账号*/
	@ApiModelProperty(value = "支付宝账号")
	private java.lang.String zfbAccount;
	/**商家客服服务电话*/
	@ApiModelProperty(value = "商家客服服务电话")
	private String servicePhone;

	@ApiModelProperty(value = "是否有许多商品")
	private Boolean manyGoods;


	@TableField(exist = false)
	@ApiModelProperty(value = "商家名称")
	private String merchantName;
	@TableField(exist = false)
	@ApiModelProperty(value = "查询用-分类id")
	private String sortId;
	@TableField(exist = false)
	@ApiModelProperty(value = "查询用-距离", hidden = true)
	private double distance;

}
